{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "f528dd6a",
   "metadata": {},
   "source": [
    "# 目标定位"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "691d450f",
   "metadata": {},
   "source": [
    "## 1.1与图像分类不同的地方"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "aba6cae2",
   "metadata": {},
   "source": [
    "<img src=\"./picture/目标定位1.png\" alt=\"Drawing\" style=\"width: 500px;\" align=\"left\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ba8df005",
   "metadata": {},
   "source": [
    "与图像分类不同的是，图像是看这个图片是不是车，但是目标定位的时候是要将其圈出来，甚至要将不同的分类圈出来\n",
    "。比如行人，树之类的"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8bcd6551",
   "metadata": {},
   "source": [
    "## 1.2目标定位中的参数说明"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3e5fa919",
   "metadata": {},
   "source": [
    "<img src=\"./picture/目标定位2.png\" alt=\"Drawing\" style=\"width: 500px;\" align=\"left\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ccde57a9",
   "metadata": {},
   "source": [
    "在这里要说明一下目标定位的一些的基本符号：\n",
    "1. 其中将一张图片定义在坐标轴上面，左上角是(0,0)相对的右下角是(1,1).\n",
    "\n",
    "2.上述图片中，要检测的是车，所以车子要被框起来，那么框的中心记为$b_x,b_y$\n",
    "\n",
    "3.最后就是框的大小是多少，框的大小记作$b_w,b_h$,这个大小是相对于原始图片大小而定的。比如这里$b_w$最好是0.5，是原始图片大小的一半"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8636701f",
   "metadata": {},
   "source": [
    "## 1.3 目标定位中如何设置标签y"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "067fbd8f",
   "metadata": {},
   "source": [
    "<img src=\"./picture/目标定位3.png\" alt=\"Drawing\" style=\"width: 500px;\" align=\"left\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "3b97255a",
   "metadata": {},
   "source": [
    "在这里要系统的阐释一下目标定位中训练集的标签.:\n",
    "    \n",
    "1.首先就是假设有4个分类，如上图中的4个分类，其中第四个比较特殊，是背景，也就是说没有任何的分类。\n",
    "这里就是标签向量中的$P_c$.$P_c$如果是1，那么表示这张图片中有我想要的分类，也就是说一张图片中可能含有行人，车和摩托车\n",
    "。相反，要是这个标签表示的是0，那么就没有上面3个分类，可以规划到背景中，同时这个图片其实也没有数模好检测的了。\n",
    "\n",
    "2.接下来就是后面的参数了，后面的参数就比较好理解，$b_x,b_y,b_h,b_w$表示的是这个分类所处的位置，也就是要根据这个位置才可以将我要检测的那个目标给框出来。\n",
    "他们分别表示：位置的中心点坐标，图片的高以及图片的宽。\n",
    "\n",
    "3.最后的$c_1,c_2,c_3$表示的是分类的概率，和图像的分类十分的类似。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1ab1e49a",
   "metadata": {},
   "source": [
    "## 1.4 目标定位中的损失函数。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "302e8790",
   "metadata": {},
   "source": [
    "<img src=\"./picture/目标定位4.png\" alt=\"Drawing\" style=\"width: 500px;\" align=\"left\"/>"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "2bd1838f",
   "metadata": {},
   "source": [
    "在这里讲述了目标检测中的损失函数：\n",
    "\n",
    "1.首先就是$P_c$,在这里$P_c$表示的是目标检测的准确率，可以使用逻辑回归\n",
    "\n",
    "2.$b_x - b_y$可以使用均方误差的方式\n",
    "\n",
    "3.最后的概率可以使用softmax函数。\n",
    "\n",
    "4.最终要的一点就是，如果$P_c = 0$那么只用计算标签中第一个元素的均方误差\n",
    "然后其他的情况就可以分别计算他们的损失值。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "746bd6c3",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "de3511a8",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.12"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
